# -*- coding: utf-8 -*-
"""
------------------------------------------------------------------------------
    File Name:  demo2
    Author   :  wanwei1029
    Date     :  2019-12-30 
    Desc     : 注意点：
    1：取数方法loc和iloc,都是用的切片形式，也就是[]，而不是()，也说明这两个不是方法。
    2：reset_index只会重排行索引，列索引不会，loc和iloc取数返回的对对象，索引与原来保持一样
    常用方法：
    head(5):取前5行
------------------------------------------------------------------------------
"""
import pandas as pd


def csv():
    file_path = r"D:\nas\python\pandas\Train_A_001.csv"
    data = pd.read_csv(file_path, header=None, names=("a","b","c","d","e","f","g"), index_col=None)
    # pandas读取csv文件，默认第一行作为列索引，如果不是，要设定header=None，此时会自动设置索引，0----n,如果要指定，通过names来指定
    # 行索引会默认生成，不会把第一列当成行索引，如果要把第一列当行索引，通过index_col=0来指定，也可通过index=[]来自定义行索引
    # print(data)
    # usecols=[] 读取指定的列,要注意的是，读取的列的列索引，仍然为原数据集的列索引，非从0开始生成，可通过reset_index()来重新生成
    data_2 = pd.read_csv(file_path, header=None, usecols=[1,2,3,4])
    print(data_2)
    data_2_loc = data_2.loc[[2,3],[2,4]]
    print(data_2_loc)
    data_2_loc.reset_index(inplace=True, drop=True)
    print(data_2_loc)
    print(data_2_loc[:2])
    print(data_2_loc[0:1])


if __name__ == '__main__':
    test_method = "csv"
    if test_method == "csv":
        csv()

